package server.maps

/**
 * 免责声明：本模拟器源代码下载自ragezone.com，仅用于技术研究学习，无任何商业行为。
 */
enum class MapFieldLimit(val value: Int) {

    MOVELIMIT(1),
    SKILLLIMIT(2),
    SUMMONLIMIT(4),
    MYSTICDOORLIMIT(8),
    MIGRATELIMIT(16),
    PORTALSCROLLLIMIT(32),
    TELEPORTITEMLIMIT(64),
    MINIGAMELIMIT(128),
    SPECIFICPORTALSCROLLLIMIT(256),
    TAMINGMOBLIMIT(512),
    STATCHANGEITEMCONSUMELIMIT(1024),
    PARTYBOSSCHANGELIMIT(2048),
    NOMOBCAPACITYLIMIT(4096),
    WEDDINGINVITATIONLIMIT(8192),
    CASHWEATHERCONSUMELIMIT(16384),
    NOPET(32768),
    ANTIMACROLIMIT(65536),
    FALLDOWNLIMIT(131072),
    SUMMONNPCLIMIT(262144),
    NOEXPDECREASE(524288),
    NODAMAGEONFALLING(1048576),
    PARCELOPENLIMIT(2097152),
    DROPLIMIT(4194304),
    ROCKETBOOSTER_LIMIT(8388608),
    ITEMOPTIONLIMIT(16777216),
    NOQUESTALERTLIMIT(33554432),
    NOANDROID(67108864),
    AUTO_EXPAND_MINIMAP(134217728),
    MOVESKILLONLY(268435456),
    ONLYSTARPLANETPET(536870912);

    fun check(value: Int): Boolean {
        return value and this.value == this.value
    }
}